home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / psion / country.fmt < prev    next >
Text File  |  1995-03-31  |  3KB  |  71 lines

  1. PSIONICS FILE - COUNTRY.FMT
  2. ===========================
  3. Format of Country information files
  4. Last modified 1994-09-08
  5. ===================================
  6.  
  7. The ROM:: filing system contains files which hold localization data.
  8. These files have names like SYS$CTRY.~01, where the number is the locale code
  9. (the built-in language file, English on my machine, is SYS$CTRY.CFO).
  10.  
  11. These files appear to have the following format (note that the first 40
  12. bytes have the same format as used by system call Fn $8B Sub $05):
  13.   Offset   0 (word): country code (e.g. UK is 44) of locale
  14.   Offset   2 (word): current offset from GMT in minutes (+ is ahead)
  15.   Offset   4 (byte): date format (0 = MDY, 1 = DMY, 2 = YMD)
  16.   Offset   5 (byte): time format (0 = am-pm, 1 = 24 hour)
  17.   Offset   6 (byte): currency symbol position (0 = before, 1 = after)
  18.   Offset   7 (byte): currency symbol separated with space (0 = yes, 1 = no)
  19.   Offset   8 (byte): currency decimal places
  20.   Offset   9 (byte): currency negative format (0 = minus, 1 = brackets)
  21.   Offset  10 (byte): currency separate thousands
  22.                      (0 = no, 1 = yes, 4 = 10000 and over)
  23.   Offset  11 (byte): thousands separator
  24.   Offset  12 (byte): decimal separator
  25.   Offset  13 (byte): date separator
  26.   Offset  14 (byte): time separator
  27.   Offset  15 to  23: zero terminated currency symbol
  28.   Offset  24 (byte): start of week (0 = Mon, 1 = Tue, ... 6 = Sun)
  29.   Offset  25 (byte): summer times: 2 = European, 4 = Northern, 8 = Southern
  30.   Offset  26 (byte): clock type (0 = analogue, 1 = digital)
  31.   Offset  27 (byte): number of letters in day abbreviation (0 to 6)
  32.   Offset  28 (byte): number of letters in month abbreviation (0 to 255)
  33.   Offset  29 (byte): workdays (the set bits indicate the workdays)
  34.     Bit 0: Monday
  35.     Bit 1: Tuesday
  36.     Bit 2: Wednesday
  37.     Bit 3: Thursday
  38.     Bit 4: Friday
  39.     Bit 5: Saturday
  40.     Bit 6: Sunday
  41.     Bit 7: unused, always zero
  42.   Offset  30 (byte): units (0 = inches, 1 = centimetres)
  43.   Offset  31 to  39: unknown, always zero
  44.   Offset  40 (word): locale code
  45.   Offset  42 (cstr): suffix for ordinal 1 ("st" in English)
  46.   Offset  45 (cstr): suffix for ordinal 2 ("nd" in English)
  47.   ...
  48.   Offset 132 (cstr): suffix for ordinal 31 ("st" in English)
  49.   Offset 135 (cstr): suffix for 12-hour clock times before midday
  50.   Offset 138 (cstr): suffix for 12-hour clock times after midday
  51.   Offset 141 to 396: character type table - entry i describes character i:
  52.     Bit 0: set if an uppercase letter
  53.     Bit 1: set if a lowercase letter
  54.     Bit 2: set if a decimal digit
  55.     Bit 3: set if a cursor movement code
  56.     Bit 4: set if an other graphic character
  57.     Bit 5: set if a control code
  58.     Bit 6: set if a hexadecimal digit
  59.     Bit 7: space
  60.   Offset  397 to  652: table to convert to uppercase
  61.   Offset  653 to  908: table to convert to lowercase
  62.   Offset  909 to 1164: table to fold character (see below)
  63.   Offset 1165 to 1996: unknown [looks like a table of words]
  64.   Offset 1997 (word) : unknown [$A088]
  65.   Offset 1999 (word) : unknown [$9C8 (Eng), $9B5 (Fre), $9EB (Ger), $9CF (Ita)]
  66.   Offset 2001 to EOF : table of error messages, all qstrs
  67.  
  68. Folding characters (offset 909) converts the character to a form which omits
  69. accents and case; by convention (but not required) folded characters are always
  70. uppercase.
  71.